package com.zhixi.pattern.notimportant.mementopattern;

import com.zhixi.pattern.notimportant.mementopattern.operation.Memento;
import com.zhixi.pattern.notimportant.mementopattern.operation.Person;

/**
 * 备忘录模式
 *
 * @作者 ShuHaoNan
 * @邮箱 shuhaonan1@gmail.com
 * @时间 2020/11/19 10:16
 */
public class MementoPattern {

    public static void main(String[] args) {
        Person person = new Person();
        /* 初始化当前状态 */
        person.setState("心情一般");
        System.out.println("当前状态：" + person.getState());
        /* 备份 */
        Memento memento = person.createMemento();
        /* 开始敲代码 */
        System.out.println("=====开始敲代码=====");
        person.setState("心情很好");
        System.out.println("当前状态：" + person.getState());
        /* 停止敲代码 */
        System.out.println("=====停止敲代码=====");
        person.restoreMemento(memento);
        System.out.println("当前状态：" + person.getState());
    }

}
